package com.lrkj.payfee.service;

import java.util.List;
import com.lrkj.payfee.domain.ReceiptRecord;
import com.lrkj.payfee.domain.vo.ReceiptRecordVo;
import com.lrkj.property.domain.Room;

/**
 * 收款单明细记录Service接口
 *
 * @author yajun_ren
 * @date 2021-08-16
 */
public interface IReceiptRecordService
{
    /**
     * 查询收款单明细记录
     *
     * @param receiptRecordId 收款单明细记录ID
     * @return 收款单明细记录
     */
    public ReceiptRecord selectReceiptRecordById(String receiptRecordId);

    /**
     * 查询收款单明细记录列表
     *
     * @param receiptRecord 收款单明细记录
     * @return 收款单明细记录集合
     */
    public List<ReceiptRecord> selectReceiptRecordList(ReceiptRecord receiptRecord);


    /**
     * 查询收款单明细记录列表 包装过的
     *
     * @param receiptRecord 收款单明细记录
     * @return 收款单明细记录集合
     */
    public List<ReceiptRecordVo> selectRecordRuleCostList(ReceiptRecord receiptRecord);

    /**
     * 新增收款单明细记录
     *
     * @param receiptRecord 收款单明细记录
     * @return 结果
     */
    public int insertReceiptRecord(ReceiptRecord receiptRecord);

    /**
     * 修改收款单明细记录
     *
     * @param receiptRecord 收款单明细记录
     * @return 结果
     */
    public int updateReceiptRecord(ReceiptRecord receiptRecord);

    /**
     * 批量删除收款单明细记录
     *
     * @param receiptRecordIds 需要删除的收款单明细记录ID
     * @return 结果
     */
    public int deleteReceiptRecordByIds(String[] receiptRecordIds);

    /**
     * 删除收款单明细记录信息
     *
     * @param receiptRecordId 收款单明细记录ID
     * @return 结果
     */
    public int deleteReceiptRecordById(String receiptRecordId);

    /***
     * 批量新增房屋数据
     *
     * */
    public int doSaveList(List<ReceiptRecord> saveBeans);


    /**
     * 批量删除收款单明细记录
     *
     * @param receiptIds 需要删除的收款单记录ID
     * @return 结果
     */
    public int deleteRecordByReceiptIds(String[] receiptIds);
}
